package com.mlnx.work.entity;

import com.baomidou.mybatisplus.annotation.EnumValue;
import com.baomidou.mybatisplus.annotation.TableName;
import com.mlnx.work.enums.ProjectStatusEnum;
import com.mlnx.work.enums.ProjectTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * table name:  t_project_task
 * author name: amanda.shan
 * create time: 2020-12-28 16:58:01
 */
@Data
@ApiModel
@TableName("t_project_task")
public class ProjectTask extends WorkBaseEntity {

    @ApiModelProperty(value = "所属层级ID")
    private Integer dirId;

    @ApiModelProperty(value = "父任务ID，0表示无")
    private Integer parentId;

    @ApiModelProperty(value = "任务名称")
    private String taskName;

    @ApiModelProperty(value = "任务描述")
    private String description;

    @ApiModelProperty(value = "任务创建人ID")
    private Integer creatorId;

    @ApiModelProperty(value = "任务负责人ID")
    private Integer managerId;

    @ApiModelProperty(value = "创建时间")
    private Long createTime;

    @ApiModelProperty(value = "最初计划开始时间")
    private Long originStartTime;

    @ApiModelProperty(value = "实际开始时间")
    private Long startTime;

    @ApiModelProperty(value = "最初计划结束时间")
    private Long originEndTime;

    @ApiModelProperty(value = "任务实际完成时间")
    private Long completedTime;

    @ApiModelProperty(value = "成果交付")
    private String achievement;

    @ApiModelProperty(value = "风险项")
    private String risk;

    @ApiModelProperty(value = "标签")
    private String tags;


    @ApiModelProperty(value = "类别")
    private ProjectTypeEnum type;

    @ApiModelProperty("里程碑")
    private Boolean milepost;

    @ApiModelProperty(value = "工时")
    private Integer workHour;

    @EnumValue
    @ApiModelProperty(value = "任务状态，TaskStatusEnum枚举")
    private ProjectStatusEnum status;
}

